package com.mdd.front.vo.order;

import com.mdd.front.vo.goods.OrderGoodsDetailVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;

/**
 * OrderVo
 */
@Data
@ApiModel(value = "订单分页返回详情", description = "订单分页返回详情")
public class OrderListVo implements Serializable {

	private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "订单id")
	private Long id;
	@ApiModelProperty(value = "订单编号")
	private String sn;
	@ApiModelProperty(value = "用户id")
	private Long userId;
	@ApiModelProperty(value = "地址ID")
	private Long addressId;
	private String image; // 用户头像
	@ApiModelProperty(value = "第三方平台交易流水号")
	private String transactionId;
	@ApiModelProperty(value = "师傅id")
	private Long staffId;
	@ApiModelProperty(value = "订单类型;0-普通订单;")
	private Integer orderType;
	@ApiModelProperty(value = "订单来源;1-微信小程序;2-微信公众号;3-手机H5;4-PC;5-苹果app;6-安卓app;")
	private Integer orderTerminal;
	@ApiModelProperty(value = " 订单状态;0-待支付;1-预约中;2-服务中;3-已完成;4-已关闭")
	private Integer orderStatus;
	@ApiModelProperty(value = "订单状态;0-待支付;1-预约中;2-服务中;3-已完成;4-已关闭")
	private String orderStatusName;
	@ApiModelProperty(value = "支付状态;0-待支付;1-已支付")
	private Integer payStatus;
	@ApiModelProperty(value = "支付方式:1-微信支付;2-支付宝支付;3-余额支付")
	private Integer payWay;
	@ApiModelProperty(value = "订单服务总价")
	private BigDecimal goodsPrice;
	@ApiModelProperty(value = "应付款金额")
	private BigDecimal orderAmount;
	@ApiModelProperty(value = "订单总价")
	private BigDecimal totalAmount;
	@ApiModelProperty(value = "订单服务数量")
	private Integer totalNum;
	@ApiModelProperty(value = "用户备注")
	private String userRemark;
	@ApiModelProperty(value = "订单备注")
	private String orderRemarks;
	@ApiModelProperty(value = "核销码")
	private String verificationCode;
	@ApiModelProperty(value = "核销状态:1-已核销;0-待核销;")
	private Integer verificationStatus;
	@ApiModelProperty(value = "联系人")
	private String contact;
	@ApiModelProperty(value = "联系电话")
	private String mobile;
	@ApiModelProperty(value = "省id")
	private Long provinceId;
	@ApiModelProperty(value = "市id")
	private Long cityId;
	@ApiModelProperty(value = "区id")
	private Long districtId;
	@ApiModelProperty(value = "详细地址")
	private String address;
	@ApiModelProperty(value = "是否已派单:1-是;0-否;")
	private Integer isDispatch;
	@ApiModelProperty(value = "是否已派单:1-是;0-否;")
	private String isDispatchName;
	@ApiModelProperty(value = "下单时间")
	private String createTime;
	@ApiModelProperty(value = "更新时间")
	private String updateTime;
	@ApiModelProperty(value = "支付时间")
	private Integer payTime;
	@ApiModelProperty(value = "订单取消时间")
	private Integer cancelTime;
	@ApiModelProperty(value = "预约上门时间-开始")
	private String appointTimeStart;
	@ApiModelProperty(value = "预约上门时间-结束")
	private String appointTimeEnd;
	@ApiModelProperty(value = "完成时间")
	private Integer finishTime;
	@ApiModelProperty(value = "预约时间")
	private String appointTime;
	@ApiModelProperty(value = "星期")
	private String weekDay;
	@ApiModelProperty(value = "服务信息")
	private OrderGoodsDetailVo orderGoodsDetailVo;

	@ApiModelProperty(value = "支付按钮:0-隐藏;1-显示;")
	private int payBtn;
	@ApiModelProperty(value = "取消按钮:0-隐藏;1-显示;")
	private int cancelBtn;
	@ApiModelProperty(value = "取消支付时间")
	private Long cancelBtnTime;
	@ApiModelProperty(value = "删除按钮:0-隐藏;1-显示;")
	private int delBtn;
	@ApiModelProperty(value = "评价按钮:0-隐藏;1-显示;")
	private int commentBtn;
	@ApiModelProperty(value = "师傅确认服务按钮:0-隐藏;1-显示;")
	private int serviceBtn;
	@ApiModelProperty(value = "师傅确认核销按钮:0-隐藏;1-显示;")
	private int verificationBtn;
	@ApiModelProperty(value = "联系人按钮:0-隐藏;1-显示;")
	private int contactBtn;



	@ApiModelProperty(value = "是否是团购订单")
	private int isBuy;

	@ApiModelProperty(value = "团购人数")
	private int buyPeopleNum;

	@ApiModelProperty(value = "团购持续时间, 格式： yyyy-MM-dd HH:mm:ss")
	private Integer endTime;
}
